// 引入公共接口地址
import {config} from '../config'
const tips = {
  "1": "抱歉,出了一个错误",
  "1000": "输入参数错误",
  "1001": "输入的json格式不正确",
  "1002": "找不到资源",
  "1003": "未知错误",
  "1004": "禁止访问",
  "1005": "不正确的开发者key",
  "1006": "服务器内部错误"
}
class HTTP {
  request({url,method="GET",data={}}){
    return new Promise((resolve,reject)=>{
      this._request(url,resolve,reject,method,data)
    })
  }
  _request(url,resolve,reject,method="GET",data={}){
    wx.request({
      url: config.api_base_url + url,
      method:method,
      data:data,
      header:{
        appkey:config.appkey
      },
      success:(response)=>{
        let code = response.statusCode.toString();
        if(code.startsWith("2")){
          resolve(response)
        }else{
          reject()
          const error_code = response.data.error_code
          this._show_error(error_code)
        }
      },
      fail:(error)=>{
        reject(error)
        this._show_error("1")
      }
    })
  }
  _show_error(error_code){
    // 没有状态码的情况下
    if(!error_code){
      // a让错误的状态码为1
      error_code = 1
    }
    // 获取状态码对应的信息
    let tip = tips[error_code];
    // 提示信息
    wx.showToast({
      title: tip ?tip :tips["1"],
      icon:"none",
      duration:2000
    })
  }
}
export {
  HTTP
}